맨위로가기

문서 지향 데이터베이스

"오늘의AI위키"는 AI 기술로 일관성 있고 체계적인 최신 지식을 제공하는 혁신 플랫폼입니다.
"오늘의AI위키"의 AI를 통해 더욱 풍부하고 폭넓은 지식 경험을 누리세요.

1. 개요

문서 지향 데이터베이스는 '문서' 개념을 핵심으로 하는 데이터베이스로, XML, YAML, JSON, BSON 등 다양한 형식으로 데이터를 캡슐화하고 인코딩한다. 문서 지향 데이터베이스는 객체 지향 프로그래밍의 객체와 유사하며, 레코드(문서)가 동일한 구조를 가질 필요 없이 각기 다른 필드와 인코딩 방식을 사용할 수 있다. CRUD 연산(생성, 검색, 갱신, 삭제)을 지원하며, 문서를 고유하게 식별하는 키를 사용한다. 컬렉션, 태그, 디렉토리 계층 구조 등을 통해 문서를 구성하며, 키-값 저장소, 검색 엔진, 관계형 데이터베이스와의 관계를 갖는다. 다양한 구현체가 존재하며, 각기 다른 라이선스, 지원 언어, API를 제공한다.

더 읽어볼만한 페이지

  • 문서 지향 데이터베이스 - 몽고DB
    몽고DB는 2007년 개발되어 2009년 오픈 소스로 전환된 문서 지향적 NoSQL 데이터베이스로, 다양한 데이터 쿼리, 인덱싱, 고가용성, 수평적 확장 기능을 제공하며, 2018년부터 멀티 도큐먼트 ACID 트랜잭션을 지원하고 다양한 에디션과 프로그래밍 언어를 지원한다.
  • 문서 지향 데이터베이스 - BSON
    BSON은 JSON과 유사한 이진 데이터 직렬화 형식으로, JSON보다 효율적인 저장 공간 활용과 빠른 검색 속도를 제공하며 다양한 데이터 유형을 지원하여 MongoDB의 주요 데이터 저장 및 전송 형식으로 사용된다.
  • 데이터베이스 유형 - 병렬 데이터베이스
    병렬 데이터베이스는 데이터베이스 시스템 성능 향상을 위해 여러 프로세서나 디스크를 활용하여 작업을 병렬로 처리하는 시스템으로, 쿼리 간 병렬 처리와 질의 내 병렬 처리 방식으로 나뉘며, 대용량 데이터 처리 및 복잡한 쿼리 실행 시간을 단축시켜 효율성을 높인다.
  • 데이터베이스 유형 - 클라우드 데이터베이스
    클라우드 데이터베이스는 클라우드 컴퓨팅 환경에서 제공되는 데이터베이스 서비스로, 가상 머신 이미지 방식과 서비스형 데이터베이스 모델로 나뉘며, SQL/NoSQL 데이터베이스를 지원하고 확장성, 고가용성 등의 특징을 가진다.
  • 데이터 분석 - 독립 성분 분석
    독립 성분 분석(ICA)은 데이터가 통계적으로 독립적인 성분들의 혼합이라는 가정하에, 데이터에서 독립적인 성분들을 찾아내는 통계적 계산 방법으로, 다양한 알고리즘 개발을 거쳐 블라인드 신호 분리, 뇌파 분석, 얼굴 인식 등 여러 분야에 응용된다.
  • 데이터 분석 - 피벗 테이블
    피벗 테이블은 대량의 데이터를 요약하고 분석하는 도구로, 행, 열, 데이터 필드로 구성되어 사용자가 데이터를 재구성하고 집계 함수를 적용하여 데이터 분석 효율성을 높여준다.
문서 지향 데이터베이스
지도 정보
개요
유형데이터베이스
데이터 모델문서
데이터 스키마스키마-리스 (Schema-less)
특징
장점유연성
개발 속도 향상
빅데이터 처리
단점트랜잭션 처리 복잡
데이터 일관성 유지 어려움
용도
사용 사례콘텐츠 관리 시스템 (CMS)
전자 상거래
로그 분석
모바일 애플리케이션
기술
저장 형식JSON, BSON, XML
인덱싱전문 검색, 지리 공간 인덱싱
예시
데이터베이스 시스템MongoDB
CouchDB
Amazon DocumentDB
Azure Cosmos DB
기타
관련 기술NoSQL
키-값 데이터베이스
그래프 데이터베이스

2. 문서의 개념

문서 지향 데이터베이스의 핵심 개념은 '문서'이다. 각 문서 지향 데이터베이스 구현은 세부 사항에서 다르지만, 일반적으로 모든 구현은 문서가 데이터를 특정 표준 형식이나 인코딩으로 캡슐화하고 인코딩한다고 가정한다. 사용되는 인코딩에는 XML, YAML, JSON 뿐만 아니라 BSON과 같은 바이너리 형태도 포함된다.

문서 저장소의 문서는 프로그래밍 개념의 객체와 거의 동일하다. 표준 스키마를 준수할 필요가 없으며, 모든 섹션, 슬롯, 부분 또는 키를 가질 필요도 없다. 일반적으로 객체를 사용하는 프로그램은 다양한 유형의 객체를 가지며, 해당 객체는 종종 많은 선택적 필드를 가진다. 동일한 클래스의 객체조차도 매우 다르게 보일 수 있다. 문서 저장소는 단일 저장소에서 서로 다른 유형의 문서를 허용하고, 내부 필드를 선택적으로 허용하며, 종종 서로 다른 인코딩 시스템을 사용하여 인코딩할 수 있다는 점에서 유사하다.

다음은 JSON으로 인코딩된 문서의 예시이다.

```json

{

"firstName": "Bob",

"lastName": "Smith",

"address": {

"type": "Home",

"street1":"5 Oak St.",

"city": "Boys",

"state": "AR",

"zip": "32225",

"country": "US"

},

"hobby": "sailing",

"phone": {

"type": "Cell",

"number": "(555)-123-4567"

}

}

```

다음은 XML로 인코딩된 문서의 예시이다.

```xml



Bob

Smith

(123) 555-0178

(890) 555-0133



Home

123 Back St.

Boys

AR

32225

US





```

이 두 문서는 서로 일부 구조적 요소를 공유하지만, 각자 고유한 요소도 가지고 있다. 문서 내의 구조, 텍스트 및 기타 데이터는 일반적으로 문서의 ''내용''이라고 한다. 모든 레코드가 동일한 필드를 포함하고 사용하지 않는 필드는 비워두는 관계형 데이터베이스와 달리, 위 예시의 두 문서에는 비어 있는 '필드'가 없다. 이러한 접근 방식은 데이터베이스의 다른 모든 레코드가 동일한 구조를 공유할 필요 없이 일부 레코드에 새로운 정보를 추가할 수 있게 한다.

문서 데이터베이스는 일반적으로 문서 내용과 함께 연관되어 저장될 추가적인 메타데이터를 제공한다. 해당 메타데이터는 문서 구성, 보안 제공 또는 기타 구현 특정 기능을 위해 데이터 저장소가 제공하는 기능과 관련될 수 있다.

2. 1. CRUD 연산

문서 지향 데이터베이스가 지원하는 핵심 연산은 다른 데이터베이스와 유사하며, 용어가 완전히 표준화되지는 않았지만 대부분 실무자는 이를 CRUD로 인식한다.

  • 생성 (또는 삽입)
  • 검색 (또는 질의, 조회, 읽기 또는 찾기)
  • 갱신 (또는 편집)
  • 삭제 (또는 제거)

2. 2. 키(Key)

문서는 해당 문서를 나타내는 고유한 ''키''를 통해 데이터베이스에서 접근한다. 이 키는 간단한 식별자(ID)로, 일반적으로 문자열, URI, 또는 경로이다. 이 키는 데이터베이스에서 문서를 검색하는 데 사용될 수 있다. 일반적으로 데이터베이스는 문서 검색 속도를 높이기 위해 키에 대한 인덱스를 유지하며, 경우에 따라 키는 문서를 생성하거나 데이터베이스에 삽입하는 데 필요하다.

3. 문서 구성 방법

문서 지향 데이터베이스의 핵심 개념은 '문서'이다. 각 문서 지향 데이터베이스 구현은 이 정의의 세부 사항에서 다르지만, 일반적으로 모든 구현은 문서가 데이터를 특정 표준 형식 또는 인코딩으로 캡슐화하고 인코딩한다고 가정한다. 사용되는 인코딩에는 XML, YAML, JSON 뿐만 아니라 BSON과 같은 바이너리 형태도 포함된다.

문서 저장소의 문서는 프로그래밍 개념의 객체와 거의 동일하다. 표준 스키마를 준수할 필요가 없으며, 모든 섹션, 슬롯, 부분 또는 키를 가질 필요도 없다. 일반적으로 객체를 사용하는 프로그램은 다양한 유형의 객체를 가지며, 해당 객체는 종종 많은 선택적 필드를 가진다. 동일한 클래스의 객체조차도 매우 다르게 보일 수 있다. 문서 저장소는 단일 저장소에서 서로 다른 유형의 문서를 허용하고, 내부 필드를 선택적으로 허용하며, 종종 서로 다른 인코딩 시스템을 사용하여 인코딩할 수 있다는 점에서 유사하다.

예를 들어, 다음은 JSON으로 인코딩된 문서이다.

```json

{

"firstName": "Bob",

"lastName": "Smith",

"address": {

"type": "Home",

"street1":"5 Oak St.",

"city": "Boys",

"state": "AR",

"zip": "32225",

"country": "US"

},

"hobby": "sailing",

"phone": {

"type": "Cell",

"number": "(555)-123-4567"

}

}

```

두 번째 문서는 다음과 같이 XML로 인코딩될 수 있다.

```xml



Bob

Smith

(123) 555-0178

(890) 555-0133



Home

123 Back St.

Boys

AR

32225

US





```

이 두 문서는 서로 일부 구조적 요소를 공유하지만, 각자 고유한 요소도 가지고 있다. 문서 내의 구조, 텍스트 및 기타 데이터는 일반적으로 문서의 ''내용''이라고 하며, 검색 또는 편집 방법을 통해 참조할 수 있다. 모든 레코드가 동일한 필드를 포함하고 사용하지 않는 필드를 비워두는 관계형 데이터베이스와 달리, 위 예시의 두 문서(레코드)에는 비어 있는 '필드'가 없다. 이 접근 방식은 데이터베이스의 다른 모든 레코드가 동일한 구조를 공유할 필요 없이 일부 레코드에 새로운 정보를 추가할 수 있게 한다.

문서 데이터베이스는 일반적으로 문서 내용과 함께 연관되어 저장될 추가적인 메타데이터를 제공한다. 해당 메타데이터는 문서 구성, 보안 제공 또는 기타 구현 특정 기능을 위해 데이터 저장소가 제공하는 기능과 관련될 수 있다.

문서 데이터베이스 구현은 다음과 같은 다양한 방식으로 문서를 구성하는 방법을 제공한다.

  • 컬렉션: 문서 그룹으로, 구현에 따라 한 컬렉션 안에만 문서가 존재하도록 강제하거나 여러 컬렉션에 존재하도록 허용할 수 있다.
  • 태그 및 비표시 메타데이터: 문서 내용 외의 추가 데이터이다.
  • 디렉토리 계층 구조: 트리 구조로 구성된 문서 그룹으로, 일반적으로 경로 또는 URI를 기반으로 한다.


때로는 이러한 조직 개념이 논리적 표현인지 물리적 표현(예: 디스크 또는 메모리)인지에 따라 다릅니다.

4. 다른 데이터베이스와의 관계

문서 지향 데이터베이스는 다른 데이터베이스 유형들과 비교했을 때 몇 가지 뚜렷한 특징을 가진다.


  • '''키-값 저장소와의 관계''': 문서 지향 데이터베이스는 키-값 저장소의 특수한 형태이며, 키-값 저장소는 NoSQL 데이터베이스의 한 종류이다. 단순한 키-값 저장소에서는 문서의 내용이 불투명하지만, 문서 지향 데이터베이스는 문서 내부 구조를 기반으로 쿼리하거나 업데이트할 수 있는 기능을 제공한다.
  • '''검색 엔진과의 관계''': 아파치 솔라, 엘라스틱서치와 같은 일부 정보 검색 엔진 시스템은 문서에 대한 핵심 연산을 충분히 제공하여 문서 지향 데이터베이스로 간주될 수 있다.
  • '''관계형 데이터베이스와의 관계''': 관계형 데이터베이스에서는 데이터가 미리 정의된 유형으로 분류되고, 각 항목(레코드)은 테이블에 저장된다. 테이블은 필드와 데이터 형식을 정의하며, 관리자는 테이블 간의 관계를 정의하고 인덱스를 설정한다. 반복되는 데이터는 별도의 테이블에 배치되고 외래 키를 사용하여 그룹화된다. 이를 데이터베이스 정규화라고 한다.[3]


관계형 데이터베이스의 주소록 예시에서는 연락처, 전화번호, 주소, 이메일 주소 등에 대한 별도의 테이블을 생성하고 외래 키를 사용하여 연결해야 한다. 반면, 문서 지향 데이터베이스에서는 모든 데이터를 단일 문서에 저장한다. 주소록 예시에서, 문서는 연락처 이름, 이미지, 모든 연락처 정보를 하나의 레코드에 포함한다.

문서 지향 모델과 관계형 모델의 주요 차이점은 데이터 형식이 문서의 경우 미리 정의되어 있지 않다는 것이다. 문서는 언제든지 유형과 형식을 변경할 수 있으며, 기존 문서에 영향을 주지 않는다. 문서 지향 시스템은 관리자가 특정 정보를 찾기 위한 힌트를 제공하며, 이는 관계형 데이터베이스의 인덱스와 유사하게 작동한다. 또한, 문서 내용 외부에 메타데이터를 추가하여 관련 정보를 검색할 수 있다.

고전적인 정규화된 관계형 모델에서는 데이터베이스 객체가 별도의 데이터 행으로 표현되어 검색 시 구조가 부여된다. 이는 프로그래밍 객체를 관계형 데이터베이스 행으로 변환하고 다시 가져올 때 객체-관계 임피던스 불일치 문제를 야기한다.[4] 문서 저장소는 프로그래밍 객체를 저장소에 더 가깝게 매핑하여 이러한 문제를 완화한다.

4. 1. 키-값 저장소와의 관계

문서 지향 데이터베이스는 특수한 키-값 저장소이며, 키-값 저장소 자체도 다른 NoSQL 데이터베이스 범주에 속한다. 단순한 키-값 저장소에서 문서 내용은 불투명하다. 문서 지향 데이터베이스는 '문서' 내부 구조를 기반으로 쿼리하거나 업데이트할 수 있는 기능을 제공하는 API 또는 쿼리/업데이트 언어를 제공한다. 이 차이점은 일반적으로 문서 데이터베이스에서 제공하는 더 풍부한 쿼리, 검색 또는 편집 API가 필요하지 않은 사용자에게는 사소할 수 있다. 최신 키-값 저장소는 종종 메타데이터 작업을 위한 기능을 포함하여 문서 저장소 간의 경계를 모호하게 만들고 있다.

4. 2. 검색 엔진과의 관계

일부 정보 검색 엔진 시스템(예: 아파치 솔라, 엘라스틱서치)은 문서에 대한 핵심 연산을 충분히 제공하여 문서 지향 데이터베이스의 정의에 부합할 수 있다.

4. 3. 관계형 데이터베이스와의 관계

관계형 데이터베이스에서 데이터는 여러 개의 미리 정의된 유형으로 분류되며, 각 항목(레코드)을 저장하기 위해 테이블이 생성된다. 테이블은 각 레코드의 필드 내 데이터를 정의하며, 모든 레코드는 동일한 형식을 갖는다. 관리자는 테이블 간의 관계를 정의하고, 검색에 사용될 필드에 인덱스를 정의한다. 반복될 수 있는 데이터는 자체 테이블에 배치되고, 외래 키를 사용하여 관련 항목을 그룹화한다. 이를 데이터베이스 정규화라고 한다.[3]

예를 들어, 주소록 애플리케이션은 연락처, 전화번호, 주소, 이메일 주소 등을 저장한다. 관계형 데이터베이스에서는 각 데이터에 대한 필드를 가진 테이블이 생성된다. CONTACT 테이블에는 이름, 이미지 열이, PHONE_NUMBER 테이블에는 국가 코드, 지역 번호, 전화번호, 유형 등이 포함될 수 있다. PHONE_NUMBER 테이블에는 연락처의 고유 ID 번호를 저장하는 외래 키 열 "CONTACT_ID"가 포함된다. 연락처를 다시 생성하기 위해 데이터베이스 엔진은 외래 키를 사용하여 관련 항목을 찾고 데이터를 재구성한다.

반면, 문서 지향 데이터베이스에서는 테이블 개념에 매핑되는 내부 구조가 없을 수 있으며, 필드와 관계는 미리 정의되지 않는다. 객체에 대한 모든 데이터는 단일 문서에 저장된다. 주소록 예에서, 문서는 연락처 이름, 이미지, 모든 연락처 정보를 단일 레코드에 포함한다. 이 항목은 키를 통해 접근되며, 데이터베이스는 문서를 검색하여 반환한다. 관련 데이터를 검색하기 위한 추가 작업은 필요하지 않다.

문서 지향 모델과 관계형 모델의 주요 차이점은 데이터 형식이 문서의 경우 미리 정의되어 있지 않다는 것이다. 문서는 언제든지 유형과 형식을 변경할 수 있다. CONTACT에 COUNTRY_FLAG를 추가하려면, 새 문서에 이 필드를 추가하면 되며, 기존 문서에는 영향을 미치지 않는다. 문서 지향 시스템은 관리자가 특정 정보를 찾기 위해 힌트를 제공할 수 있도록 한다. 이러한 힌트는 관계형의 인덱스와 유사하게 작동한다. 또한 문서 내용 외부에 메타데이터를 추가할 수 있다. 예를 들어, 항목을 주소록의 일부로 태깅하면 "모든 주소록 항목"과 같은 관련 정보를 검색할 수 있다. 이는 테이블과 유사한 기능을 제공하지만, 개념(데이터 범주)을 물리적 구현(테이블)과 분리한다.

고전적인 정규화된 관계형 모델에서 데이터베이스의 객체는 검색될 때 부여된 구조 외에 고유한 구조 없이 별도의 데이터 행으로 표현된다. 이는 프로그래밍 객체를 관련 데이터베이스 행으로 변환하고 다시 가져오는 데 문제가 발생하며, 이를 객체-관계 임피던스 불일치라고 한다.[4] 문서 저장소는 프로그래밍 객체를 저장소에 더 가깝게 매핑한다. 이는 NoSQL이라는 용어를 사용하여 판매되기도 한다.

5. 구현체 목록

이름개발사라이선스지원 언어비고RESTful API
AerospikeAerospikeAGPL 및 독점C, C#, Java, Scala, Python, Node.js, PHP, Go, Rust, 스프링 프레임워크Aerospike는 플래시 메모리에 최적화된 인 메모리 분산 키-값 NoSQL 데이터베이스로, 문서 저장 모델도 지원한다.[5][6]
AllegroGraphFranz, Inc.독점Java, Python, Common Lisp, Ruby, Scala, C#, Perl이 데이터베이스 플랫폼은 단일 데이터베이스에서 문서 저장소와 그래프 데이터 모델을 지원한다. JSON, JSON-LD, RDF, 전체 텍스트 검색, ACID, 2단계 커밋, 멀티 마스터 복제, Prolog 및 SPARQL을 지원한다.[7]
ArangoDBArangoDB아파치 라이선스C, C#, Java, Python, Node.js, PHP, Scala, Go, Ruby, Elixir이 데이터베이스 시스템은 하나의 데이터베이스 코어와 통합된 쿼리 언어 AQL(ArangoDB 쿼리 언어)을 사용하여 문서 저장소뿐만 아니라 키/값 및 그래프 데이터 모델도 지원한다.[8]
BaseXBaseX 팀BSD 라이선스Java, XQueryXML, JSON 및 바이너리 형식 지원; 클라이언트/서버 기반 아키텍처; 동시 구조 및 전체 텍스트 검색 및 업데이트.
CachéInterSystems Corporation독점Java, C#, Node.js의료, 비즈니스 및 정부 애플리케이션에서 일반적으로 사용된다.
CloudantCloudant, Inc.독점Erlang, Java, Scala, 및 CBigCouch를 기반으로 하는 분산 데이터베이스 서비스로, 회사의 오픈 소스 아파치 지원 CouchDB 프로젝트의 포크이다. JSON 모델을 사용한다.
Clusterpoint 데이터베이스Clusterpoint Ltd.무료 다운로드와 함께 독점자바스크립트, SQL, PHP, C#, Java, Python, Node.js, C, C++,ACID를 준수하는 트랜잭션; 고가용성 데이터 복제 및 샤딩; 내장 전체 텍스트 검색 엔진 관련성 순위; JS/SQL 쿼리 언어; GIS; 사용량 기반 서비스형 데이터베이스 또는 온-프레미스 무료 소프트웨어 다운로드로 제공된다.
Couchbase ServerCouchbase, Inc.아파치 라이선스C, C#, Java, Python, Node.js, PHP, SQL, Go, 스프링 프레임워크, LINQ분산 NoSQL 문서 데이터베이스, JSON 모델 및 SQL 기반 쿼리 언어.[9]
CouchDB아파치 소프트웨어 재단아파치 라이선스HTTP 요청을 할 수 있는 모든 언어다중 버전 동시성 제어 및 제한된 ACID 속성을 사용하는 REST/HTTP를 통한 JSON. 뷰 및 쿼리에 맵 및 리듀스를 사용한다.[10][11]
CrateDBCrate.io, Inc.아파치 라이선스Java클러스터 전체에서 실시간 분산 쿼리에 익숙한 SQL 구문을 사용한다. 루씬/Elasticsearch 생태계를 기반으로 하며 바이너리 객체(BLOB)에 대한 기본 제공 지원이 있다.[12]
Cosmos DB마이크로소프트독점C#, Java, Python, Node.js, 자바스크립트, SQL마이크로소프트 애저 플랫폼의 일부인 서비스형 플랫폼(PaaS) 제공. 이전 Azure DocumentDB를 기반으로 구축하고 확장한다.
DocumentDB아마존 웹 서비스독점 온라인 서비스다양함, REST완벽하게 관리되는 MongoDB v3.6 호환 데이터베이스 서비스
DynamoDB아마존 웹 서비스독점Java, 자바스크립트, Node.js, Go, C# .NET, Perl, PHP, Python, Ruby, Rust, Haskell, Erlang, Django, 및 Grails키-값 및 문서 데이터 구조를 지원하는 완벽하게 관리되는 독점 NoSQL 데이터베이스 서비스
ElasticsearchShay Banon서버 측 공용 라이선스 및 탄력적 라이선스에 따라 이중 라이선스 부여됨.JavaJSON, 검색 엔진.
eXisteXistLGPLXQuery, JavaREST/HTTP를 통한 XML, WebDAV, Lucene 전체 텍스트 검색, 바이너리 데이터 지원, 유효성 검사, 버전 관리, 클러스터링, 트리거, URL 다시 쓰기, 컬렉션, ACLS, XQuery 업데이트[13]
InformixIBM독점, 무상 에디션 포함[14]다양함(MongoDB API와 호환)JSON, 복제, 샤딩 및 ACID 규정을 갖춘 RDBMS.
Jackrabbit아파치 재단아파치 라이선스Java자바 콘텐츠 저장소 구현모름
HCL Notes (HCL Domino)HCL독점LotusScript, Java, Notes Formula Language다중 값
MarkLogicMarkLogic Corporation무료 개발자 라이선스 또는 상업용[15]Java, 자바스크립트, Node.js, XQuery, SPARQL, XSLT, C++JSON, XML 및 RDF 삼중항을 위한 분산 문서 지향 데이터베이스. 내장된 전체 텍스트 검색, ACID 트랜잭션, 고가용성 및 재해 복구, 인증된 보안.
MongoDBMongoDB, IncDBMS의 경우 서버 측 공용 라이선스, 클라이언트 드라이버의 경우 아파치 2 라이선스[16]C, C++, C#, Java, Perl, PHP, Python, Go, Node.js, Ruby, Rust,[17] Scala[18]복제 및 샤딩, BSON 저장소(이진 형식 JSON)를 갖춘 문서 데이터베이스.[19][20]
MUMPS 데이터베이스불명독점 및 AGPL[21]MUMPS의료 애플리케이션에서 일반적으로 사용된다.모름
ObjectDatabase++Ekky Software독점C++, C#, TScript바이너리 네이티브 C++ 클래스 구조모름
OpenLink VirtuosoOpenLink SoftwareGPLv2[1] 및 독점C++, C#, Java, SPARQL미들웨어데이터베이스 엔진 하이브리드
OrientDBOrient Technologies아파치 라이선스JavaHTTP를 통한 JSON, SQL 지원, ACID 트랜잭션
Oracle NoSQL Database오라클아파치 및 독점C, C#, Java, Python, node.js, Go스키마가 없는 JSON, 고정 스키마 테이블 및 키/값 쌍을 지원하는 공유 없음, 수평 확장 가능한 NoSQL 데이터베이스. ACID 트랜잭션도 지원한다.
Qizx퀄컴독점REST, Java, XQuery, XSLT, C, C++, Python통합된 전체 텍스트 검색을 갖춘 분산 문서 지향 XML 데이터베이스; JSON, 텍스트 및 바이너리 지원.
RedisJSONRedisRedis 소스 사용 가능 라이선스(RSAL)Python통합된 전체 텍스트 검색을 갖춘 JSON.[22]
RethinkDB불명아파치 라이선스[23]C++, Python, 자바스크립트, Ruby, Java복제 및 샤딩을 갖춘 분산 문서 지향 JSON 데이터베이스.
SAP HANASAP독점SQL과 유사한 언어ACID 트랜잭션 지원, JSON만 지원
Sednasedna.org아파치 라이선스C++, XQueryXML 데이터베이스
SimpleDB아마존 웹 서비스독점 온라인 서비스Erlang모름
Apache Solr아파치 소프트웨어 재단아파치 라이선스[24]JavaJSON, CSV, XML 및 몇 가지 다른 형식.[25] 검색 엔진.[26]
TerminusDBTerminusDB아파치 라이선스Python, Node.js, 자바스크립트이 데이터베이스 시스템은 하나의 데이터베이스 코어와 통합된 데이터로그 기반 쿼리 언어 WOQL(웹 객체 쿼리 언어)을 사용하여 문서 저장소뿐만 아니라 그래프 데이터 모델도 지원한다.[27]


6. 한국어 위키백과 추가 내용

(이전 출력이 원본 소스 부재로 인해 빈 텍스트만 출력되었으므로, 수정할 내용이 없습니다. 따라서 이전 출력과 동일하게 빈 텍스트를 출력합니다.)

참조

[1] 웹사이트 A Comparison of NoSQL Database Management Systems and Models https://www.digitalo[...] 2019-08-09
[2] 웹사이트 DB-Engines Ranking per database model category http://db-engines.co[...]
[3] 웹사이트 Description of the database normalization basics https://support.micr[...] 2023-07-14
[4] 웹사이트 The Object-Relational Impedance Mismatch http://www.agiledata[...] 2023-03-22
[5] 웹사이트 Documentation Aerospike - Key-Value Store https://docs.aerospi[...]
[6] 웹사이트 Documentation Aerospike https://docs.aerospi[...]
[7] 웹사이트 HTTP Protocol for AllegroGraph https://franz.com/ag[...]
[8] 웹사이트 Multi-model highly available NoSQL database https://www.arangodb[...]
[9] 웹사이트 Documentation https://web.archive.[...]
[10] 웹사이트 Apache CouchDB http://couchdb.apach[...]
[11] 웹사이트 HTTP_Document_API - Couchdb Wiki http://wiki.apache.o[...]
[12] 웹사이트 Crate SQL HTTP Endpoint (Archived copy) https://crate.io/doc[...]
[13] 웹사이트 eXist-db Open Source Native XML Database http://exist-db.org
[14] 웹사이트 Compare the Informix Version 12 editions http://www.ibm.com/d[...] 2016-07-22
[15] 웹사이트 MarkLogic Licensing http://developer.mar[...]
[16] 웹사이트 MongoDB Licensing http://www.mongodb.o[...]
[17] 뉴스 The New MongoDB Rust Driver https://www.mongodb.[...]
[18] 웹사이트 Community Supported Drivers Reference http://docs.mongodb.[...]
[19] 웹사이트 HTTP Interface — MongoDB Ecosystem https://docs.mongodb[...]
[20] 웹사이트 MongoDB Ecosystem Documentation https://github.com/m[...] 2019-06-27
[21] 웹사이트 GT.M High end TP database engine http://sourceforge.n[...] 2023-09-26
[22] 웹사이트 RedisJSON - a JSON data type for Redis https://oss.redis.co[...]
[23] 웹사이트 Transferring copyright to The Linux Foundation, relicensing RethinkDB under ASLv2. https://github.com/r[...]
[24] 웹사이트 solr/LICENSE.txt at main · apache/solr · GitHub. https://github.com/a[...]
[25] 웹사이트 Response Writers :: Apache Solr Reference Guide. https://solr.apache.[...]
[26] 웹사이트 Managed Resources :: Apache Solr Reference Guide. https://solr.apache.[...]
[27] 웹사이트 TerminusDB and open-source in-memory document-oriented graph database https://terminusdb.c[...]
[28] 웹인용 A Comparison of NoSQL Database Management Systems and Models https://www.digitalo[...] 2019-08-09
[29] 웹인용 DB-Engines Ranking per database model category http://db-engines.co[...]



본 사이트는 AI가 위키백과와 뉴스 기사,정부 간행물,학술 논문등을 바탕으로 정보를 가공하여 제공하는 백과사전형 서비스입니다.
모든 문서는 AI에 의해 자동 생성되며, CC BY-SA 4.0 라이선스에 따라 이용할 수 있습니다.
하지만, 위키백과나 뉴스 기사 자체에 오류, 부정확한 정보, 또는 가짜 뉴스가 포함될 수 있으며, AI는 이러한 내용을 완벽하게 걸러내지 못할 수 있습니다.
따라서 제공되는 정보에 일부 오류나 편향이 있을 수 있으므로, 중요한 정보는 반드시 다른 출처를 통해 교차 검증하시기 바랍니다.

문의하기 : help@durumis.com